package com.redxun.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.redxun.model.vo.*;
import org.apache.ibatis.annotations.Param;
import org.apache.poi.ss.formula.functions.T;

import java.math.BigDecimal;
import java.util.List;

public interface IndicatorsReviewDao extends BaseMapper<T> {
    //资金待审
    void updateIdViod(@Param("ids") List<String> ids);
    // 分配待审
    List<ZbfpVo> selectBatchIds(@Param("ids")List<String> ids);
    List<ZbfpmxVo> selectZbfpmxByZbfpId(@Param("id")String id);
    ZbdjVo selectZbdjByZbpfBUTTONEDITCTLDCNAME(@Param("name")String name);
    List<ZjhfVo> selectZjhfByZbdjId(@Param("id")String id);
    List<ZbfpVo> selectUsedZbfpList(@Param("name")String name);
    List<ZbfpmxVo> selectBatchZbfpmxByZbfpIds(@Param("ids")List<String> ids);

    void updateSELECTD6U8E(@Param("id")String id);

    void insetFpzjb(@Param("id")String id);

    void updateBf(@Param("buttoneditCtldc") String buttoneditCtldc, @Param("xfp") BigDecimal xfp, @Param("wfp")BigDecimal wfp);

    void updateAll(@Param("buttoneditCtldc") String buttoneditCtldc, @Param("xfp") BigDecimal xfp, @Param("wfp")BigDecimal wfp);
    // 到账待审
    BfdjVo getBfdjById(@Param("id") String id);

    String getBfhj(@Param("zbId") String zbId, @Param("id") String id);

    void updateBfdj(@Param("id") String id);

    void updateBfdz(@Param("xbf")BigDecimal xbf, @Param("wbf")BigDecimal wbf, @Param("zbId")String zbId);

    void updateAlldz(@Param("xbf")BigDecimal xbf,@Param("wbf") BigDecimal wbf, @Param("zbId")String zbId);

    void updateFpzjb(@Param("id")String id, @Param("xbf")BigDecimal xbf, @Param("bcbf")BigDecimal bcbf);
    // 调拨待审
    DbdjVo selectDbdj(@Param("id")String id);

    long selectFpzjb(@Param("dcid")String dcid);

    void updaDbdj(@Param("kdc")BigDecimal kdc,@Param("id")String id);

    long selectDbdjByInputS1tzs(@Param("dcid")String dcid);

    void updateFpzjbBydbDc(@Param("dchj")BigDecimal dchj, @Param("dcid")String dcid);

    long selectDrHj(@Param("drid")String drid);

    void updateFpzjbBydbDr(@Param("drhj")BigDecimal drhj, @Param("drid")String drid);
    // 归还待审
    GhdjVo selectGhdj(@Param("id")String id);

    void updaGhdj(@Param("kgh")BigDecimal kgh, @Param("id")String id);

    long selectGhdjByIputw9c84(@Param("dcid")String dcid);

    void updateFpzjbByGhDc(@Param("bghhj")BigDecimal bghhj,@Param("dcid") String dcid);

    long selectGhHj(@Param("ghid")String ghid);

    void updateFpzjbByGhRk(@Param("ghhj")BigDecimal ghhj, @Param("ghid")String ghid);
    // 回收待审
    List<HsmxVo> selectHsmx(@Param("id")String id);

    long selectKhsje(@Param("zjbid")String zjbid);

    void updateHsStatus(@Param("id")String id);

    void  updateFpzjbByHs(@Param("zjbid")String zjbid, @Param("bchsje")BigDecimal bchsje);

    String getHsBh(@Param("id")String id);
    // 结项待审
    List<JzmxVo> selectJzmx(@Param("id")String id);

    long selectKjzje(@Param("zjbid")String zjbid);

    void updateJzmx(@Param("id")String id);

    void updateZjbByJzmx(@Param("zjbid")String zjbid, @Param("jzje")BigDecimal jzje);

    void insetSubTable(@Param("id")Long id, @Param("glxm")String glxm, @Param("type")String type, @Param("jzje")BigDecimal jzje);

    String getZjjzBh(@Param("id")String id);

    String selectZjds(@Param("id")String id);
    // 一体化认领
    long selectYthBcHjJe(@Param("ids")List<String> ids);

    void updateZjbByYthSyjeAndWsyje(@Param("middleTableId")String middleTableId, @Param("bczfjehj")BigDecimal bczfjehj);
    // 其它认领
    long selectQtBcHjJe(@Param("ids")List<String> ids);

    void updateZjbByQtSyjeAndWsyje(@Param("middleTableId")String middleTableId, @Param("bczfjehj")BigDecimal bczfjehj);
    // 认领转代管
    long selectRlzdgBcHjJe(@Param("ids")List<String> ids);

    void updateZjbByRlzdgSyjeAndWsyje(@Param("middleTableId")String middleTableId, @Param("bczfjehj")BigDecimal bczfjehj);

    String getZjbzjbh(@Param("middleTableId")String middleTableId);

    String selectMaxInputYula3ByDate(@Param("prefix")String prefix);

    ZbdjVo selectZbdjByZjbBh(@Param("zjbzjbh")String zjbzjbh);

    void insertZbdj(@Param("id") Long id,@Param("zjbh") String zjbh, @Param("sjzt")String sjzt,@Param("djr") String djr,@Param("djrname") String djrname, @Param("djrDeptId") String djrDeptId, @Param("djrq") String djrq,
                   @Param("zjnf")BigDecimal zjnf, @Param("zjwh")String zjwh, @Param("zjly")String zjly, @Param("zjwjmc")String zjwjmc, @Param("bczfjehj")BigDecimal bczfjehj,
                    @Param("bczfjehj1")BigDecimal bczfjehj1,@Param("bczfjehj2")BigDecimal bczfjehj2);

    String getZjhf(@Param("middleTableId")String middleTableId);

    void insertSubTableIsdk9(@Param("id") Long id, @Param("zbId") Long zbId, @Param("zjhf")String zjhf, @Param("bczfjehj")BigDecimal bczfjehj);

    String selectFpbMaxInputYula3ByDate(@Param("prefix")String prefix);

    void insertFpb(@Param("id") Long id, @Param("djbh") String djbh, @Param("sjzt")String sjzt, @Param("djr")String djr, @Param("djrname")String djrname, @Param("djrDeptId")String djrDeptId,
                   @Param("djrq")String djrq,@Param("zbdjId")Long zbdjId, @Param("zjbzjbh")String zjbzjbh, @Param("zjnf")BigDecimal zjnf, @Param("zjwh")String zjwh, @Param("zjly")String zjly,
                   @Param("zjwjmc")String zjwjmc, @Param("zjje")BigDecimal zjje, @Param("yfpje")BigDecimal yfpje, @Param("wfpje")BigDecimal wfpje, @Param("bcfpje")BigDecimal bcfpje);

    FpzjbVo getFpzjb(@Param("middleTableId")String middleTableId);

    void insertFpbDetail(@Param("id") Long id, @Param("fpId")Long fpId, @Param("zjhf")String zjhf, @Param("hfje")BigDecimal hfje, @Param("wfpje")BigDecimal wfpje,
                         @Param("fpdw")String fpdw, @Param("fpdw_name")String fpdw_name, @Param("fpje")BigDecimal fpje);

    void insertFpzjb(@Param("fpzjbId")Long fpzjbId, @Param("id")Long id, @Param("zjbh")String zjbh, @Param("zjnf")BigDecimal zjnf, @Param("zjwh")String zjwh, @Param("zjly")String zjly,
                     @Param("zjwjmc")String zjwjmc, @Param("bczfjehj")BigDecimal bczfjehj, @Param("zjhf")String zjhf, @Param("bczfjehj1")BigDecimal bczfjehj1, @Param("deptId")String deptId,
                     @Param("deptName")String deptName, @Param("bczfjehj2")BigDecimal bczfjehj2, @Param("bczfjehj3")BigDecimal bczfjehj3, @Param("bczfjehj4")BigDecimal bczfjehj4, @Param("fpId")Long fpId,
                     @Param("djrDeptId")String djrDeptId);

    String selectDzbMaxInputYula3ByDate(@Param("prefix")String prefix);

    void insertDzb(@Param("dzId")Long dzId, @Param("dzbh")String dzbh, @Param("sjzt")String sjzt, @Param("djr")String djr, @Param("djrname")String djrname, @Param("djrDeptId")String djrDeptId,
                   @Param("djrq")String djrq,@Param("id")Long id, @Param("zjbh") String zjbh, @Param("zjnf")BigDecimal zjnf, @Param("zjwh")String zjwh, @Param("zjly")String zjly, @Param("zjwjmc")String zjwjmc,
                   @Param("bczfjehj")BigDecimal bczfjehj, @Param("zjhf")String zjhf, @Param("bczfjehj1")BigDecimal bczfjehj1, @Param("deptId")String deptId, @Param("deptName")String deptName,
                   @Param("bczfjehj2")BigDecimal bczfjehj2,@Param("bczfjehj3") BigDecimal bczfjehj3,@Param("bczfjehj4") BigDecimal bczfjehj4, @Param("fpzjbId")Long fpzjbId);

}
